tab.path <- "results/table/"
tab.name <- "app_tab_g05.tex"

yvars <- c("par.onl.sh")

Re$interact <- Re$dpost*Re$treat_10

vars <- c( "interact","factor(dpost)" )
outvars <- c( "interact","^factor.dpost.TRUE$" )
labvars <- c("DPost X March","DPost")

m1  <- felm(as.formula(RegFor( y = yvars[1] , x = c(vars) ,
      FE = "G_UNIT" , IV="0", clust = "G_UNIT" )),
           data= Re)
m2 <- felm(as.formula(RegFor( y = yvars[1] , x = c(vars) ,
      FE = "G_UNIT" , IV="0", clust = "G_UNIT" )),
           data= subset(Re, year %in% c(1912, 1914)))
m3 <- felm(as.formula(RegFor( y = yvars[1] , x = c(vars) ,
      FE = "G_UNIT" , IV="0", clust = "G_UNIT" )),
           data= subset(Re, year %in% c(1911,1912, 1914)))
m4 <- felm(as.formula(RegFor( y = yvars[1] , x = c(vars) ,
      FE = "G_UNIT" , IV="0", clust = "G_UNIT" )),
       data= subset(Re, year %in% c(1911,1912, 1913, 1914) 
        & (pop < 15000 & (dist.roads <= 2 | treat_10 == 1))))
getwd()
regstoadd <- list(m1,m2, m3,m4 )

MSd <- function(variable){
  x1 <- round(mean(variable, na.rm = TRUE), 2)
  x2<-  round(sd(variable, na.rm = TRUE), 2)
  return(c(x1,x2))
}

Stats <- rbind(MSd(Re[,yvars[1]]),
  MSd(Re[,yvars[1]]) ,
  MSd(Re[Re$year %in% c(1912, 1914),yvars[1]]),
  MSd(Re[Re$year %in% c(1911, 1912, 1914),yvars[1]]),
  MSd(Re[Re$year %in% c(1911, 1912, 1914) & Re$pop < 15000 ,yvars[1]])
)
####OUT
add.lines <- list(AddLines( 5, "Parish FE", rep(LMc("Yes"),4)),
                  AddLines( 5, "Incl. 1913", c(rep(LMc("Yes"),1), c(LMc("No"), LMc("No"), LMc("Yes")))),
                  AddLines( 5, "Incl. 1911", c(rep(LMc("Yes"),1), c(LMc("No"), LMc("Yes"), LMc("Yes")))),
                  AddLines( 5, "Controls", c( rep(LMc("No"),4))),
                  AddLines( 5, "Pop under 15k", c(rep(LMc("No"),4), LMc("Yes"))),
                  AddLines( 5, "Within 2~km of roads ", c(rep(LMc("No"),4), LMc("Yes"))),
                  AddLines( 5, "Mean dep. var." , Stats[,1] ),
                  AddLines( 5, "Sd dep. var." , Stats[,2] )
                 )

fileConn<-file(paste0(tab.path,tab.name))
print(fileConn)
writeLines(stargazer(regstoadd,
                     float = FALSE ,
                     keep= outvars,
                     order = outvars ,
                     covariate.labels= labvars ,
                     star.cutoffs = c(0.1099, 0.0599, 0.0199) ,
                     digits.extra = 0,
                     multicolumn=F,#
                     #column.sep.width="10pt",
                     dep.var.caption = paste("Share of Local Electors" ),
                     dep.var.labels.include = F,
                     font.size = "footnotesize",
                     omit.table.layout = "n",
                     align =T,
                     add.lines = add.lines,
                     digits = 3,
                     intercept.top = T,
                     intercept.bottom = F,
                     keep.stat = c("rsq" , "n") ,
                     omit.stat = c("res.dev","ser") ),
           fileConn)
close(fileConn)
rm(list=
    setdiff(ls()[sapply(ls(), function(x) any(class(get(x)) == 'data.frame'))],
    c("Re","Ind")))
